package iohuan_;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * Create by IntelliJ IDEA
 *
 * @author: jsonor
 * @date-Time:   通过字节缓冲流  加入异常处理
 * @description:
 */
public class Copy_mp4_new {

  public static void main(String[] args) {
    BufferedInputStream bis = null;
    BufferedOutputStream bos = null;
    //  1.创建字节缓冲流对象
    try {
      bis = new BufferedInputStream(new FileInputStream("1.mp4"));
      bos = new BufferedOutputStream(new FileOutputStream("C:\\again.mp4"));
      //  2.拷贝： 从源文件读取数据  写入目的文件
      //    定义 字节缓冲流一次读写一个字节数组
      byte[] bys = new byte[1022];
      //定义有多少个字节数
      int len = 0;
      //  循环条件：读取的字节数不是-1，则表示还有数据（没有到数据刘的末尾）
      while ((len = bis.read(bys)) != -1) {
        bos.write(bys, 0, len);
      }

    }

    //出现异常以后的处理  输出异常信息
    catch (Exception e) {
      System.out.println(e.getMessage());
    } finally {
      //  无论如何要执行的
      if (bis != null) {
        try {
          bis.close();
        } catch (IOException e) {
          e.printStackTrace();
        }
      }
      if (bos != null) {
        try {
          bos.close();
        } catch (IOException e) {
          e.printStackTrace();
        }
      }
    }
  }
}




